[INFO] fetching crate terminal-emulator 0.1.0...
[INFO] checking terminal-emulator-0.1.0 against master#158f00a1c5175648af6f6099b075f78d1d014a28 for pr-121251
[INFO] extracting crate terminal-emulator 0.1.0 into /workspace/builds/worker-7-tc1/source
[INFO] validating manifest of crates.io crate terminal-emulator 0.1.0 on toolchain 158f00a1c5175648af6f6099b075f78d1d014a28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate terminal-emulator 0.1.0
[INFO] finished tweaking crates.io crate terminal-emulator 0.1.0
[INFO] tweaked toml for crates.io crate terminal-emulator 0.1.0 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c523eb9a238e1be6427536217c4907e7b214c70842df605fbf52b5898c03d1eb
[INFO] running `Command { std: "docker" "start" "-a" "c523eb9a238e1be6427536217c4907e7b214c70842df605fbf52b5898c03d1eb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c523eb9a238e1be6427536217c4907e7b214c70842df605fbf52b5898c03d1eb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c523eb9a238e1be6427536217c4907e7b214c70842df605fbf52b5898c03d1eb", kill_on_drop: false }`
[INFO] [stdout] c523eb9a238e1be6427536217c4907e7b214c70842df605fbf52b5898c03d1eb
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3cf553119b731a11e99b4706969eb821166eb1d76600d4b727144364f76d0c6e
[INFO] running `Command { std: "docker" "start" "-a" "3cf553119b731a11e99b4706969eb821166eb1d76600d4b727144364f76d0c6e", kill_on_drop: false }`
[INFO] [stderr]    Compiling arraydeque v0.4.5
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]     Checking utf8parse v0.1.1
[INFO] [stderr]     Checking bitflags v1.3.2
[INFO] [stderr]     Checking static_assertions v0.3.4
[INFO] [stderr]     Checking unicode-width v0.1.11
[INFO] [stderr]     Checking vte v0.3.3
[INFO] [stderr]     Checking base64 v0.10.1
[INFO] [stderr]     Checking terminal-emulator v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: the item `Range` is imported redundantly
[INFO] [stdout]    --> src/term/mod.rs:812:13
[INFO] [stdout]     |
[INFO] [stdout] 17  | use std::ops::{Index, IndexMut, Range};
[INFO] [stdout]     |                                 ----- the item `Range` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 812 |         use std::ops::Range;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Range` is imported redundantly
[INFO] [stdout]    --> src/term/mod.rs:812:13
[INFO] [stdout]     |
[INFO] [stdout] 17  | use std::ops::{Index, IndexMut, Range};
[INFO] [stdout]     |                                 ----- the item `Range` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 812 |         use std::ops::Range;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/term/cell.rs:128:40
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let mut chars = [std::mem::uninitialized(); MAX_ZEROWIDTH_CHARS + 1];
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/term/cell.rs:128:40
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let mut chars = [std::mem::uninitialized(); MAX_ZEROWIDTH_CHARS + 1];
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `region` is never used
[INFO] [stdout]    --> src/grid/mod.rs:566:8
[INFO] [stdout]     |
[INFO] [stdout] 564 | pub trait IndexRegion<I, T> {
[INFO] [stdout]     |           ----------- method in this trait
[INFO] [stdout] 565 |     /// Get an immutable region of Self
[INFO] [stdout] 566 |     fn region(&self, _: I) -> Region<'_, T>;
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `static_assertions::core::num::<impl usize>::saturating_sub` that must be used
[INFO] [stdout]     --> src/term/mod.rs:1253:21
[INFO] [stdout]      |
[INFO] [stdout] 1253 |                     col.saturating_sub(1);
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this returns the result of the operation, without modifying the original
[INFO] [stdout]      = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1253 |                     let _ = col.saturating_sub(1);
[INFO] [stdout]      |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `char` does not permit being left uninitialized
[INFO] [stdout]    --> src/term/cell.rs:128:30
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let mut chars = [std::mem::uninitialized(); MAX_ZEROWIDTH_CHARS + 1];
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              this code causes undefined behavior when executed
[INFO] [stdout]     |                              help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: characters must be a valid Unicode codepoint
[INFO] [stdout]     = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 5 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `region` is never used
[INFO] [stdout]    --> src/grid/mod.rs:566:8
[INFO] [stdout]     |
[INFO] [stdout] 564 | pub trait IndexRegion<I, T> {
[INFO] [stdout]     |           ----------- method in this trait
[INFO] [stdout] 565 |     /// Get an immutable region of Self
[INFO] [stdout] 566 |     fn region(&self, _: I) -> Region<'_, T>;
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `static_assertions::core::num::<impl usize>::saturating_sub` that must be used
[INFO] [stdout]     --> src/term/mod.rs:1253:21
[INFO] [stdout]      |
[INFO] [stdout] 1253 |                     col.saturating_sub(1);
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this returns the result of the operation, without modifying the original
[INFO] [stdout]      = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1253 |                     let _ = col.saturating_sub(1);
[INFO] [stdout]      |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `char` does not permit being left uninitialized
[INFO] [stdout]    --> src/term/cell.rs:128:30
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let mut chars = [std::mem::uninitialized(); MAX_ZEROWIDTH_CHARS + 1];
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              this code causes undefined behavior when executed
[INFO] [stdout]     |                              help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: characters must be a valid Unicode codepoint
[INFO] [stdout]     = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 5 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.87s
[INFO] running `Command { std: "docker" "inspect" "3cf553119b731a11e99b4706969eb821166eb1d76600d4b727144364f76d0c6e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3cf553119b731a11e99b4706969eb821166eb1d76600d4b727144364f76d0c6e", kill_on_drop: false }`
[INFO] [stdout] 3cf553119b731a11e99b4706969eb821166eb1d76600d4b727144364f76d0c6e
[INFO] checking terminal-emulator-0.1.0 against try#b4fc5dbf0bc33be331f9d893db5b3a794f29724a+rustflags=-Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds for pr-121251
[INFO] extracting crate terminal-emulator 0.1.0 into /workspace/builds/worker-7-tc2/source
[INFO] validating manifest of crates.io crate terminal-emulator 0.1.0 on toolchain b4fc5dbf0bc33be331f9d893db5b3a794f29724a
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate terminal-emulator 0.1.0
[INFO] finished tweaking crates.io crate terminal-emulator 0.1.0
[INFO] tweaked toml for crates.io crate terminal-emulator 0.1.0 written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 24f0a51c0aadd0a176998e12192e03bb2dd73b76d63120c8ca20230830b8e487
[INFO] running `Command { std: "docker" "start" "-a" "24f0a51c0aadd0a176998e12192e03bb2dd73b76d63120c8ca20230830b8e487", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "24f0a51c0aadd0a176998e12192e03bb2dd73b76d63120c8ca20230830b8e487", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "24f0a51c0aadd0a176998e12192e03bb2dd73b76d63120c8ca20230830b8e487", kill_on_drop: false }`
[INFO] [stdout] 24f0a51c0aadd0a176998e12192e03bb2dd73b76d63120c8ca20230830b8e487
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d184d866c2007b53c1a3b43f46734fde9b648029ed61476d10b0a9f0f29cee3b
[INFO] running `Command { std: "docker" "start" "-a" "d184d866c2007b53c1a3b43f46734fde9b648029ed61476d10b0a9f0f29cee3b", kill_on_drop: false }`
[INFO] [stderr]    Compiling arraydeque v0.4.5
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]     Checking utf8parse v0.1.1
[INFO] [stderr]     Checking static_assertions v0.3.4
[INFO] [stderr]     Checking bitflags v1.3.2
[INFO] [stderr]     Checking unicode-width v0.1.11
[INFO] [stderr]     Checking vte v0.3.3
[INFO] [stderr]     Checking base64 v0.10.1
[INFO] [stderr]     Checking terminal-emulator v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/grid/row.rs:140:21
[INFO] [stdout]     |
[INFO] [stdout] 140 |         &self.inner[(index.start.0)..(index.end.0)]
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/grid/row.rs:148:25
[INFO] [stdout]     |
[INFO] [stdout] 148 |         &mut self.inner[(index.start.0)..(index.end.0)]
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/grid/row.rs:174:21
[INFO] [stdout]     |
[INFO] [stdout] 174 |         &self.inner[(index.start.0)..]
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/grid/row.rs:182:25
[INFO] [stdout]     |
[INFO] [stdout] 182 |         &mut self.inner[(index.start.0)..]
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/grid/storage.rs:72:22
[INFO] [stdout]    |
[INFO] [stdout] 72 |         bigger.inner[bigger_zero..]
[INFO] [stdout]    |                      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/grid/storage.rs:73:30
[INFO] [stdout]    |
[INFO] [stdout] 73 |             == smaller.inner[smaller_zero..smaller_zero + (len - bigger_zero)]
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/grid/storage.rs:75:34
[INFO] [stdout]    |
[INFO] [stdout] 75 |                 == smaller.inner[smaller_zero + (len - bigger_zero)..]
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/grid/storage.rs:76:29
[INFO] [stdout]    |
[INFO] [stdout] 76 |             && bigger.inner[bigger_zero - smaller_zero..bigger_zero]
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/grid/storage.rs:245:22
[INFO] [stdout]     |
[INFO] [stdout] 245 |             for i in 0..4 {
[INFO] [stdout]     |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/grid/mod.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 |             self.scroll_up(&(index::Line(0)..new_line_count), scroll_lines, template);
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/grid/mod.rs:300:35
[INFO] [stdout]     |
[INFO] [stdout] 300 |             for i in index::Range(region.end..lines) {
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/grid/mod.rs:305:35
[INFO] [stdout]     |
[INFO] [stdout] 305 |             for i in index::Range(index::Line(0)..positions) {
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/grid/mod.rs:310:38
[INFO] [stdout]     |
[INFO] [stdout] 310 |             for line in index::Range((region.start + positions)..region.end).rev() {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/grid/mod.rs:314:38
[INFO] [stdout]     |
[INFO] [stdout] 314 |             for line in index::Range(region.start..(region.start + positions)) {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/grid/mod.rs:348:22
[INFO] [stdout]     |
[INFO] [stdout] 348 |             for i in 0..fixed_lines {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/grid/mod.rs:355:22
[INFO] [stdout]     |
[INFO] [stdout] 355 |             for i in 0..*positions {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/grid/mod.rs:360:38
[INFO] [stdout]     |
[INFO] [stdout] 360 |             for line in index::Range(region.start..(region.end - positions)) {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/grid/mod.rs:365:38
[INFO] [stdout]     |
[INFO] [stdout] 365 |             for line in index::Range((region.end - positions)..region.end) {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ansi.rs:800:41
[INFO] [stdout]     |
[INFO] [stdout] 800 |                     for chunk in params[1..].chunks(2) {
[INFO] [stdout]     |                                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ansi.rs:851:34
[INFO] [stdout]     |
[INFO] [stdout] 851 |                     && params[1][0..12] == *b"CursorShape="
[INFO] [stdout]     |                                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ansi.rs:887:30
[INFO] [stdout]     |
[INFO] [stdout] 887 |                     for i in 0..256 {
[INFO] [stdout]     |                              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ansi.rs:894:38
[INFO] [stdout]     |
[INFO] [stdout] 894 |                 for param in &params[1..] {
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ansi.rs:946:30
[INFO] [stdout]     |
[INFO] [stdout] 946 |                     for _ in 0..arg_or_default!(idx: 0, default: 1) {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/ansi.rs:1064:68
[INFO] [stdout]      |
[INFO] [stdout] 1064 | ...                   if let Some(color) = parse_color(&args[i..], &mut start) {
[INFO] [stdout]      |                                                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/ansi.rs:1082:68
[INFO] [stdout]      |
[INFO] [stdout] 1082 | ...                   if let Some(color) = parse_color(&args[i..], &mut start) {
[INFO] [stdout]      |                                                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ansi.rs:1128:46
[INFO] [stdout]      |
[INFO] [stdout] 1128 |                 handler.set_scrolling_region(top..bottom);
[INFO] [stdout]      |                                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ansi.rs:1220:25
[INFO] [stdout]      |
[INFO] [stdout] 1220 |             let range = 0..256;
[INFO] [stdout]      |                         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/term/mod.rs:757:29
[INFO] [stdout]     |
[INFO] [stdout] 757 |         let scroll_region = index::Line(0)..grid.num_lines();
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Range` is imported redundantly
[INFO] [stdout]    --> src/term/mod.rs:812:13
[INFO] [stdout]     |
[INFO] [stdout] 17  | use std::ops::{Index, IndexMut, Range};
[INFO] [stdout]     |                                 ----- the item `Range` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 812 |         use std::ops::Range;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/term/mod.rs:844:51
[INFO] [stdout]     |
[INFO] [stdout] 844 |                     for col in index::Range::from(cols.start..line_end) {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/term/mod.rs:858:53
[INFO] [stdout]     |
[INFO] [stdout] 858 | ...                   for c in (&cell.chars()[1..]).iter().filter(|c| **c != ' ') {
[INFO] [stdout]     |                                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/term/mod.rs:893:64
[INFO] [stdout]     |
[INFO] [stdout] 893 |                 res.append(&self.grid, &self.tabs, start.line, start.col..end.col);
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/term/mod.rs:899:62
[INFO] [stdout]     |
[INFO] [stdout] 899 |                 res.append(&self.grid, &self.tabs, end.line, end.col..max_col);
[INFO] [stdout]     |                                                              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/term/mod.rs:906:21
[INFO] [stdout]     |
[INFO] [stdout] 906 |                     index::Column(0)..start.col,
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/term/mod.rs:913:62
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 res.append(&self.grid, &self.tabs, end.line, end.col..max_col);
[INFO] [stdout]     |                                                              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/term/mod.rs:915:36
[INFO] [stdout]     |
[INFO] [stdout] 915 |                 let middle_range = (start.line + 1)..(end.line);
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/term/mod.rs:917:62
[INFO] [stdout]     |
[INFO] [stdout] 917 |                     res.append(&self.grid, &self.tabs, line, index::Column(0)..max_col);
[INFO] [stdout]     |                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/term/mod.rs:925:21
[INFO] [stdout]     |
[INFO] [stdout] 925 |                     index::Column(0)..start.col,
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1020:30
[INFO] [stdout]      |
[INFO] [stdout] 1020 |                 .scroll_up(&(index::Line(0)..old_lines), lines, &self.cursor.template);
[INFO] [stdout]      |                              ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1027:19
[INFO] [stdout]      |
[INFO] [stdout] 1027 |                 &(index::Line(0)..old_lines),
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1057:30
[INFO] [stdout]      |
[INFO] [stdout] 1057 |         self.scroll_region = index::Line(0)..self.grid.num_lines();
[INFO] [stdout]      |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1112:15
[INFO] [stdout]      |
[INFO] [stdout] 1112 |             &(origin..self.scroll_region.end),
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1129:15
[INFO] [stdout]      |
[INFO] [stdout] 1129 |             &(origin..self.scroll_region.end),
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1138:29
[INFO] [stdout]      |
[INFO] [stdout] 1138 |         let scroll_region = index::Line(0)..self.grid.num_lines();
[INFO] [stdout]      |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1237:32
[INFO] [stdout]      |
[INFO] [stdout] 1237 |                 let src = line[col..].as_ptr();
[INFO] [stdout]      |                                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1238:32
[INFO] [stdout]      |
[INFO] [stdout] 1238 |                 let dst = line[(col + width)..].as_mut_ptr();
[INFO] [stdout]      |                                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1322:28
[INFO] [stdout]      |
[INFO] [stdout] 1322 |             let src = line[source..].as_ptr();
[INFO] [stdout]      |                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1323:28
[INFO] [stdout]      |
[INFO] [stdout] 1323 |             let dst = line[destination..].as_mut_ptr();
[INFO] [stdout]      |                            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1331:28
[INFO] [stdout]      |
[INFO] [stdout] 1331 |         for c in &mut line[source..destination] {
[INFO] [stdout]      |                            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1551:27
[INFO] [stdout]      |
[INFO] [stdout] 1551 |         for c in &mut row[start..end] {
[INFO] [stdout]      |                           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1568:28
[INFO] [stdout]      |
[INFO] [stdout] 1568 |             let src = line[end..].as_ptr();
[INFO] [stdout]      |                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1569:28
[INFO] [stdout]      |
[INFO] [stdout] 1569 |             let dst = line[start..].as_mut_ptr();
[INFO] [stdout]      |                            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1578:28
[INFO] [stdout]      |
[INFO] [stdout] 1578 |         for c in &mut line[end..] {
[INFO] [stdout]      |                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1587:18
[INFO] [stdout]      |
[INFO] [stdout] 1587 |         for _ in 0..count {
[INFO] [stdout]      |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1589:23
[INFO] [stdout]      |
[INFO] [stdout] 1589 |             for i in (0..(col.0)).rev() {
[INFO] [stdout]      |                       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1641:38
[INFO] [stdout]      |
[INFO] [stdout] 1641 |                 for cell in &mut row[col..] {
[INFO] [stdout]      |                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1671:68
[INFO] [stdout]      |
[INFO] [stdout] 1671 |                 for cell in &mut self.grid[self.cursor.point.line][self.cursor.point.col..] {
[INFO] [stdout]      |                                                                    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1676:37
[INFO] [stdout]      |
[INFO] [stdout] 1676 |                         .region_mut((self.cursor.point.line + 1)..)
[INFO] [stdout]      |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1914:38
[INFO] [stdout]      |
[INFO] [stdout] 1914 |             tabs: index::Range::from(index::Column(0)..num_cols)
[INFO] [stdout]      |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/grid/row.rs:140:21
[INFO] [stdout]     |
[INFO] [stdout] 140 |         &self.inner[(index.start.0)..(index.end.0)]
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/grid/row.rs:148:25
[INFO] [stdout]     |
[INFO] [stdout] 148 |         &mut self.inner[(index.start.0)..(index.end.0)]
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/grid/row.rs:174:21
[INFO] [stdout]     |
[INFO] [stdout] 174 |         &self.inner[(index.start.0)..]
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/grid/row.rs:182:25
[INFO] [stdout]     |
[INFO] [stdout] 182 |         &mut self.inner[(index.start.0)..]
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/grid/tests.rs:24:14
[INFO] [stdout]    |
[INFO] [stdout] 24 |     for i in 0..10 {
[INFO] [stdout]    |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/grid/tests.rs:28:22
[INFO] [stdout]    |
[INFO] [stdout] 28 |     grid.scroll_up(&(Line(0)..Line(10)), Line(2), &0);
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/grid/tests.rs:56:14
[INFO] [stdout]    |
[INFO] [stdout] 56 |     for i in 0..10 {
[INFO] [stdout]    |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/grid/tests.rs:60:24
[INFO] [stdout]    |
[INFO] [stdout] 60 |     grid.scroll_down(&(Line(0)..Line(10)), Line(2), &0);
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/grid/tests.rs:88:14
[INFO] [stdout]    |
[INFO] [stdout] 88 |     for i in 0..5 {
[INFO] [stdout]    |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/grid/tests.rs:89:18
[INFO] [stdout]    |
[INFO] [stdout] 89 |         for j in 0..5 {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/grid/storage.rs:72:22
[INFO] [stdout]    |
[INFO] [stdout] 72 |         bigger.inner[bigger_zero..]
[INFO] [stdout]    |                      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/grid/storage.rs:73:30
[INFO] [stdout]    |
[INFO] [stdout] 73 |             == smaller.inner[smaller_zero..smaller_zero + (len - bigger_zero)]
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/grid/storage.rs:75:34
[INFO] [stdout]    |
[INFO] [stdout] 75 |                 == smaller.inner[smaller_zero + (len - bigger_zero)..]
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/grid/storage.rs:76:29
[INFO] [stdout]    |
[INFO] [stdout] 76 |             && bigger.inner[bigger_zero - smaller_zero..bigger_zero]
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/grid/storage.rs:245:22
[INFO] [stdout]     |
[INFO] [stdout] 245 |             for i in 0..4 {
[INFO] [stdout]     |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/grid/mod.rs:226:30
[INFO] [stdout]     |
[INFO] [stdout] 226 |             self.scroll_up(&(index::Line(0)..new_line_count), scroll_lines, template);
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/grid/mod.rs:300:35
[INFO] [stdout]     |
[INFO] [stdout] 300 |             for i in index::Range(region.end..lines) {
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/grid/mod.rs:305:35
[INFO] [stdout]     |
[INFO] [stdout] 305 |             for i in index::Range(index::Line(0)..positions) {
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/grid/mod.rs:310:38
[INFO] [stdout]     |
[INFO] [stdout] 310 |             for line in index::Range((region.start + positions)..region.end).rev() {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/grid/mod.rs:314:38
[INFO] [stdout]     |
[INFO] [stdout] 314 |             for line in index::Range(region.start..(region.start + positions)) {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/grid/mod.rs:348:22
[INFO] [stdout]     |
[INFO] [stdout] 348 |             for i in 0..fixed_lines {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/grid/mod.rs:355:22
[INFO] [stdout]     |
[INFO] [stdout] 355 |             for i in 0..*positions {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/grid/mod.rs:360:38
[INFO] [stdout]     |
[INFO] [stdout] 360 |             for line in index::Range(region.start..(region.end - positions)) {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/grid/mod.rs:365:38
[INFO] [stdout]     |
[INFO] [stdout] 365 |             for line in index::Range((region.end - positions)..region.end) {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ansi.rs:800:41
[INFO] [stdout]     |
[INFO] [stdout] 800 |                     for chunk in params[1..].chunks(2) {
[INFO] [stdout]     |                                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ansi.rs:851:34
[INFO] [stdout]     |
[INFO] [stdout] 851 |                     && params[1][0..12] == *b"CursorShape="
[INFO] [stdout]     |                                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ansi.rs:887:30
[INFO] [stdout]     |
[INFO] [stdout] 887 |                     for i in 0..256 {
[INFO] [stdout]     |                              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ansi.rs:894:38
[INFO] [stdout]     |
[INFO] [stdout] 894 |                 for param in &params[1..] {
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ansi.rs:946:30
[INFO] [stdout]     |
[INFO] [stdout] 946 |                     for _ in 0..arg_or_default!(idx: 0, default: 1) {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/ansi.rs:1064:68
[INFO] [stdout]      |
[INFO] [stdout] 1064 | ...                   if let Some(color) = parse_color(&args[i..], &mut start) {
[INFO] [stdout]      |                                                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/ansi.rs:1082:68
[INFO] [stdout]      |
[INFO] [stdout] 1082 | ...                   if let Some(color) = parse_color(&args[i..], &mut start) {
[INFO] [stdout]      |                                                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ansi.rs:1128:46
[INFO] [stdout]      |
[INFO] [stdout] 1128 |                 handler.set_scrolling_region(top..bottom);
[INFO] [stdout]      |                                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ansi.rs:1220:25
[INFO] [stdout]      |
[INFO] [stdout] 1220 |             let range = 0..256;
[INFO] [stdout]      |                         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/term/mod.rs:757:29
[INFO] [stdout]     |
[INFO] [stdout] 757 |         let scroll_region = index::Line(0)..grid.num_lines();
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Range` is imported redundantly
[INFO] [stdout]    --> src/term/mod.rs:812:13
[INFO] [stdout]     |
[INFO] [stdout] 17  | use std::ops::{Index, IndexMut, Range};
[INFO] [stdout]     |                                 ----- the item `Range` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 812 |         use std::ops::Range;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/term/mod.rs:844:51
[INFO] [stdout]     |
[INFO] [stdout] 844 |                     for col in index::Range::from(cols.start..line_end) {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/term/mod.rs:858:53
[INFO] [stdout]     |
[INFO] [stdout] 858 | ...                   for c in (&cell.chars()[1..]).iter().filter(|c| **c != ' ') {
[INFO] [stdout]     |                                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/term/mod.rs:893:64
[INFO] [stdout]     |
[INFO] [stdout] 893 |                 res.append(&self.grid, &self.tabs, start.line, start.col..end.col);
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/term/mod.rs:899:62
[INFO] [stdout]     |
[INFO] [stdout] 899 |                 res.append(&self.grid, &self.tabs, end.line, end.col..max_col);
[INFO] [stdout]     |                                                              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/term/mod.rs:906:21
[INFO] [stdout]     |
[INFO] [stdout] 906 |                     index::Column(0)..start.col,
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/term/mod.rs:913:62
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 res.append(&self.grid, &self.tabs, end.line, end.col..max_col);
[INFO] [stdout]     |                                                              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/term/mod.rs:915:36
[INFO] [stdout]     |
[INFO] [stdout] 915 |                 let middle_range = (start.line + 1)..(end.line);
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/term/mod.rs:917:62
[INFO] [stdout]     |
[INFO] [stdout] 917 |                     res.append(&self.grid, &self.tabs, line, index::Column(0)..max_col);
[INFO] [stdout]     |                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/term/mod.rs:925:21
[INFO] [stdout]     |
[INFO] [stdout] 925 |                     index::Column(0)..start.col,
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1020:30
[INFO] [stdout]      |
[INFO] [stdout] 1020 |                 .scroll_up(&(index::Line(0)..old_lines), lines, &self.cursor.template);
[INFO] [stdout]      |                              ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1027:19
[INFO] [stdout]      |
[INFO] [stdout] 1027 |                 &(index::Line(0)..old_lines),
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1057:30
[INFO] [stdout]      |
[INFO] [stdout] 1057 |         self.scroll_region = index::Line(0)..self.grid.num_lines();
[INFO] [stdout]      |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1112:15
[INFO] [stdout]      |
[INFO] [stdout] 1112 |             &(origin..self.scroll_region.end),
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1129:15
[INFO] [stdout]      |
[INFO] [stdout] 1129 |             &(origin..self.scroll_region.end),
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1138:29
[INFO] [stdout]      |
[INFO] [stdout] 1138 |         let scroll_region = index::Line(0)..self.grid.num_lines();
[INFO] [stdout]      |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1237:32
[INFO] [stdout]      |
[INFO] [stdout] 1237 |                 let src = line[col..].as_ptr();
[INFO] [stdout]      |                                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1238:32
[INFO] [stdout]      |
[INFO] [stdout] 1238 |                 let dst = line[(col + width)..].as_mut_ptr();
[INFO] [stdout]      |                                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1322:28
[INFO] [stdout]      |
[INFO] [stdout] 1322 |             let src = line[source..].as_ptr();
[INFO] [stdout]      |                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1323:28
[INFO] [stdout]      |
[INFO] [stdout] 1323 |             let dst = line[destination..].as_mut_ptr();
[INFO] [stdout]      |                            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1331:28
[INFO] [stdout]      |
[INFO] [stdout] 1331 |         for c in &mut line[source..destination] {
[INFO] [stdout]      |                            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1551:27
[INFO] [stdout]      |
[INFO] [stdout] 1551 |         for c in &mut row[start..end] {
[INFO] [stdout]      |                           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1568:28
[INFO] [stdout]      |
[INFO] [stdout] 1568 |             let src = line[end..].as_ptr();
[INFO] [stdout]      |                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1569:28
[INFO] [stdout]      |
[INFO] [stdout] 1569 |             let dst = line[start..].as_mut_ptr();
[INFO] [stdout]      |                            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1578:28
[INFO] [stdout]      |
[INFO] [stdout] 1578 |         for c in &mut line[end..] {
[INFO] [stdout]      |                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1587:18
[INFO] [stdout]      |
[INFO] [stdout] 1587 |         for _ in 0..count {
[INFO] [stdout]      |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1589:23
[INFO] [stdout]      |
[INFO] [stdout] 1589 |             for i in (0..(col.0)).rev() {
[INFO] [stdout]      |                       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1641:38
[INFO] [stdout]      |
[INFO] [stdout] 1641 |                 for cell in &mut row[col..] {
[INFO] [stdout]      |                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1671:68
[INFO] [stdout]      |
[INFO] [stdout] 1671 |                 for cell in &mut self.grid[self.cursor.point.line][self.cursor.point.col..] {
[INFO] [stdout]      |                                                                    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1676:37
[INFO] [stdout]      |
[INFO] [stdout] 1676 |                         .region_mut((self.cursor.point.line + 1)..)
[INFO] [stdout]      |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1914:38
[INFO] [stdout]      |
[INFO] [stdout] 1914 |             tabs: index::Range::from(index::Column(0)..num_cols)
[INFO] [stdout]      |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1965:18
[INFO] [stdout]      |
[INFO] [stdout] 1965 |         for i in 0..5 {
[INFO] [stdout]      |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/term/mod.rs:1966:22
[INFO] [stdout]      |
[INFO] [stdout] 1966 |             for j in 0..2 {
[INFO] [stdout]      |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/term/mod.rs:2020:18
[INFO] [stdout]      |
[INFO] [stdout] 2020 |         for i in 0..5 {
[INFO] [stdout]      |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/term/mod.rs:2048:18
[INFO] [stdout]      |
[INFO] [stdout] 2048 |         for l in 0..3 {
[INFO] [stdout]      |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/term/mod.rs:2050:26
[INFO] [stdout]      |
[INFO] [stdout] 2050 |                 for c in 0..3 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/term/mod.rs:2113:15
[INFO] [stdout]      |
[INFO] [stdout] 2113 |             &(index::Line(0)..index::Line(1)),
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/term/cell.rs:128:40
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let mut chars = [std::mem::uninitialized(); MAX_ZEROWIDTH_CHARS + 1];
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/term/cell.rs:128:40
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let mut chars = [std::mem::uninitialized(); MAX_ZEROWIDTH_CHARS + 1];
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `region` is never used
[INFO] [stdout]    --> src/grid/mod.rs:566:8
[INFO] [stdout]     |
[INFO] [stdout] 564 | pub trait IndexRegion<I, T> {
[INFO] [stdout]     |           ----------- method in this trait
[INFO] [stdout] 565 |     /// Get an immutable region of Self
[INFO] [stdout] 566 |     fn region(&self, _: I) -> Region<'_, T>;
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]    --> src/ansi.rs:336:43
[INFO] [stdout]     |
[INFO] [stdout] 336 |     fn set_scrolling_region(&mut self, _: Range<Line>) {}
[INFO] [stdout]     |                                           ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-D explicit-range`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public enum definition
[INFO] [stdout]   --> src/selection.rs:46:17
[INFO] [stdout]    |
[INFO] [stdout] 46 |         region: Range<Anchor>,
[INFO] [stdout]    |                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public enum definition
[INFO] [stdout]   --> src/selection.rs:50:17
[INFO] [stdout]    |
[INFO] [stdout] 50 |         region: Range<Point<isize>>,
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public enum definition
[INFO] [stdout]   --> src/selection.rs:54:17
[INFO] [stdout]    |
[INFO] [stdout] 54 |         region: Range<Point<isize>>,
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `static_assertions::core::num::<impl usize>::saturating_sub` that must be used
[INFO] [stdout]     --> src/term/mod.rs:1253:21
[INFO] [stdout]      |
[INFO] [stdout] 1253 |                     col.saturating_sub(1);
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this returns the result of the operation, without modifying the original
[INFO] [stdout]      = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1253 |                     let _ = col.saturating_sub(1);
[INFO] [stdout]      |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]     --> src/term/mod.rs:1860:48
[INFO] [stdout]      |
[INFO] [stdout] 1860 |     fn set_scrolling_region(&mut self, region: Range<index::Line>) {
[INFO] [stdout]      |                                                ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `char` does not permit being left uninitialized
[INFO] [stdout]    --> src/term/cell.rs:128:30
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let mut chars = [std::mem::uninitialized(); MAX_ZEROWIDTH_CHARS + 1];
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              this code causes undefined behavior when executed
[INFO] [stdout]     |                              help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: characters must be a valid Unicode codepoint
[INFO] [stdout]     = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 5 previous errors; 63 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `terminal-emulator` (lib) due to 6 previous errors; 63 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: method `region` is never used
[INFO] [stdout]    --> src/grid/mod.rs:566:8
[INFO] [stdout]     |
[INFO] [stdout] 564 | pub trait IndexRegion<I, T> {
[INFO] [stdout]     |           ----------- method in this trait
[INFO] [stdout] 565 |     /// Get an immutable region of Self
[INFO] [stdout] 566 |     fn region(&self, _: I) -> Region<'_, T>;
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `static_assertions::core::num::<impl usize>::saturating_sub` that must be used
[INFO] [stdout]     --> src/term/mod.rs:1253:21
[INFO] [stdout]      |
[INFO] [stdout] 1253 |                     col.saturating_sub(1);
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this returns the result of the operation, without modifying the original
[INFO] [stdout]      = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1253 |                     let _ = col.saturating_sub(1);
[INFO] [stdout]      |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `char` does not permit being left uninitialized
[INFO] [stdout]    --> src/term/cell.rs:128:30
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let mut chars = [std::mem::uninitialized(); MAX_ZEROWIDTH_CHARS + 1];
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              this code causes undefined behavior when executed
[INFO] [stdout]     |                              help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: characters must be a valid Unicode codepoint
[INFO] [stdout]     = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 75 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "d184d866c2007b53c1a3b43f46734fde9b648029ed61476d10b0a9f0f29cee3b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d184d866c2007b53c1a3b43f46734fde9b648029ed61476d10b0a9f0f29cee3b", kill_on_drop: false }`
[INFO] [stdout] d184d866c2007b53c1a3b43f46734fde9b648029ed61476d10b0a9f0f29cee3b
